import hashlib


def password(data, salt="zhangdapeng"):
    # 创建加密对象
    m = None
    if salt is not None:
        m = hashlib.new("sha256", salt.encode())
    else:
        m = hashlib.new("sha256")

    # 加密
    if isinstance(data, str):
        m.update(data.encode())
    elif isinstance(data, bytes):
        m.update(data)
    else:
        print("参数错误，data应该是str类型或者bytes类型")

    # 转换为16进制字符串
    result = m.hexdigest()

    # 返回加密后的字符串
    return result


# 校验密码是否正确
def password_check(
        origin_password,  # 原始密码，用户传进来的要校验的密码
        encrypted_password,  # 加密后的密码 ，存在数据库的里面
        salt="zhangdapeng",  # 加密的盐值
):
    result = password(origin_password, salt)
    return result == encrypted_password
